feat(notifications): trigger sent folder not found in-app notification on message compose#9912
Conversation
Short answer:We intentionally model recurring domain events as concrete types. A dedicated Long answer:I will split the answer into a few topics.
Because the model is intentionally type-driven: each domain event encodes its invariants (severity, icon, actions, and style) once, in a named type. That prevents call-site drift and gives us a single place for localization and UX rules. It also lets us reconstruct the same notification deterministically (e.g., from
Not different types, just different instances. This event is account-scoped; two accounts with no Sent folder produce two independent notifications. The factory takes Although the notification UI may look the same, they’re distinct because they’re tied to different accounts.
Ad-hoc field composition pushes UX decisions to every caller and is easy to get wrong (severity/actions/styling drift, inconsistent strings). Encoding those invariants in a dedicated type keeps behavior consistent, testable, and localizable. That's the core reason we avoid a generic "fill the fields" builder. Let me know if that address your concerns. |
a1cea26 to
4ab9edb
Compare
d1b475c to
f92c2fa
Compare
… user switches account
f92c2fa to
232f79a
Compare
Fixes #6276.
This PR introduces the following changes: